package jTestUnit;

import static org.junit.Assert.assertEquals;
import Modelo.Equation;
import Modelo.Erros;

import org.junit.Test;

public class TestEquation {

// testes do metodo criarPostfix()
	@Test
	public void testCriarPostfix001() {
		Equation tester = new Equation("+2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO, tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix002() {
		Equation tester = new Equation("-2*3");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix003() {
		Equation tester = new Equation("*2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix004() {
		Equation tester = new Equation("/2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix005() {
		Equation tester = new Equation("(2*3");
		assertEquals(Erros.FECHAR_PARENTESIS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix006() {
		Equation tester = new Equation(")2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix007() {
		Equation tester = new Equation("!2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix008() {
		Equation tester = new Equation("π2*3");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix009() {
		Equation tester = new Equation("^2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix010() {
		Equation tester = new Equation(null);
		assertEquals(Erros.TAMANHO_ZERO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix011() {
		Equation tester = new Equation("%2*3");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix012() {
		Equation tester = new Equation("");
		assertEquals(Erros.TAMANHO_ZERO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix101() {
		Equation tester = new Equation("2*3+");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix102() {
		Equation tester = new Equation("2*3-");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix103() {
		Equation tester = new Equation("2*3*");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix104() {
		Equation tester = new Equation("2*3/");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix105() {
		Equation tester = new Equation("2*3(");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix106() {
		Equation tester = new Equation("2*3)");
		assertEquals(Erros.ABRIR_PARENTESIS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix107() {
		Equation tester = new Equation("2*3!");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix108() {
		Equation tester = new Equation("2*3π");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix109() {
		Equation tester = new Equation("2*3^");
		assertEquals(Erros.CHAR_INVALIDO_FIM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix110() {
		Equation tester = new Equation("2*3%");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix111() {
		Equation tester = new Equation("2*_#3%");
		assertEquals(Erros.CHAR_INVALIDO_MEIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix201() {
		Equation tester = new Equation("");
		assertEquals(Erros.TAMANHO_ZERO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix202() {
		Equation tester = new Equation("1+1+1");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix203() {
		Equation tester = new Equation("5-1-1");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix204() {
		Equation tester = new Equation("2*2*2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix205() {
		Equation tester = new Equation("2/2/2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix206() {
		Equation tester = new Equation("((2/2)/2)");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix207() {
		Equation tester = new Equation("2/(2)/2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix208() {
		Equation tester = new Equation("2/()2/2");
		assertEquals(Erros.USO_INVALIDO_PARENTESIS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix209() {
		Equation tester = new Equation("2/(2/2)");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix210() {
		Equation tester = new Equation("2+2!+2!");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix211() {
		Equation tester = new Equation("2!+2+2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix212() {
		Equation tester = new Equation("2+!2+2");
		assertEquals(Erros.USO_INVALIDO_FACTORIAL,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix213() {
		Equation tester = new Equation("2^2+2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix214() {
		Equation tester = new Equation("2^2^2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix215() {
		Equation tester = new Equation("2+2^+2");
		assertEquals(Erros.OPERADOR_MAL_POSICIONADO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix216() {
		Equation tester = new Equation("2%+2%+2%");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix217() {
		Equation tester = new Equation("2+2%+2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix218() {
		Equation tester = new Equation("2+%2+2");
		assertEquals(Erros.USO_INVALIDO_PERCENTAGEM,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix301() {
		Equation tester = new Equation("2+++2");
		assertEquals(Erros.OPERADORES_REPETIDOS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix302() {
		Equation tester = new Equation("2++*2");
		assertEquals(Erros.OPERADORES_REPETIDOS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix303() {
		Equation tester = new Equation("2");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix304() {
		Equation tester = new Equation("+");
		assertEquals(Erros.CHAR_INVALIDO_INICIO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix305() {
		Equation tester = new Equation("(2+2)2");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix401() {
		Equation tester = new Equation("var");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix402() {
		Equation tester = new Equation("var+var");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix403() {
		Equation tester = new Equation("var!");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix404() {
		Equation tester = new Equation("(var)");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix405() {
		Equation tester = new Equation("3var");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix406() {
		Equation tester = new Equation("var%*3-var!+algo");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix407() {
		Equation tester = new Equation("v a r");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix408() {
		Equation tester = new Equation("v a r - algo + 3 * 6 / 1");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix501() {
		Equation tester = new Equation("54%%");
		assertEquals(Erros.OPERADORES_REPETIDOS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix502() {
		Equation tester = new Equation("34!!");
		assertEquals(Erros.OPERADORES_REPETIDOS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix503() {
		Equation tester = new Equation("34!%");
		assertEquals(Erros.USO_INVALIDO_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix504() {
		Equation tester = new Equation("34!π!");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix505() {
		Equation tester = new Equation("π");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix506() {
		Equation tester = new Equation("var%*π+da/8");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix507() {
		Equation tester = new Equation("wer+asd!-π*(87-88)/3");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix508() {
		Equation tester = new Equation("√(π)");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix509() {
		Equation tester = new Equation("√(var*π)+da/8");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix510() {
		Equation tester = new Equation("wer+√(asd-π)*(87-88)/3");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix511() {
		Equation tester = new Equation("√()");
		assertEquals(Erros.USO_INVALIDO_PARENTESIS,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix512() {
		Equation tester = new Equation("√(√(wer+asd-π*(87-88)))/3");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix513() {
		Equation tester = new Equation("√");
		assertEquals(Erros.USO_INVALIDO_RAIZ,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix514() {
		Equation tester = new Equation("√(√(√(√(65536))))");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix515() {
		Equation tester = new Equation("√(a se)");
		assertEquals(Erros.VALIDO,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix516() {
		Equation tester = new Equation("√(78se)");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	@Test
	public void testCriarPostfix517() {
		Equation tester = new Equation("√(a898se)");
		assertEquals(Erros.FALTA_OPERADOR,tester.criarPostfix());
	}
	
// testes criarArvore
	@Test
	public void testCriarArvore001() {
		Equation tester = new Equation("/");
		tester.criarArvore();
	}
	
	@Test
	public void testSetVar005() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "");
	}
	@Test
	public void testSetVar006() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "sdfghj");
	}
	@Test
	public void testSetVar007() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "6546546");
	}
	@Test
	public void testSetVar008() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "as54dfas");
	}
	@Test
	public void testSetVar009() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "_sadfsdf___");
	}
	@Test
	public void testSetVar010() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "llk klhlkh ");
	}
	@Test
	public void testSetVar011() {
		Equation tester = new Equation("+2*3");
		tester.setVar(10.0, "João Cunha");
	}

	@Test
	public void testSetVar102() {
		Equation tester = new Equation("var!+√(asd%-π)*(87-88)/3 + √(√(√(raiz)))");
		tester.criarPostfix();
		tester.setVar(10.0, "var");
		tester.setVar(20.0, "asd");
		tester.setVar(30.0, "raiz");
		tester.setVar(40.0, "raiz");
		tester.setVar(50.0, "var");
		tester.setVar(60.0, "notvar");
		tester.setVar(70.0, "21");
		tester.setVar(80.0, "asd213");
		tester.setVar(90.0, "João Cunha");
	}

	@Test
	public void testResolver001() throws CloneNotSupportedException {
		Equation tester = new Equation("var!+√(asd%-π)*(87-88)/3 + √(√(√(raiz)))");
		assertEquals(0, Double.compare(tester.resolver(),0));
	}
	@Test
	public void testResolver002() throws CloneNotSupportedException {
		Equation tester = new Equation("var!+√(asd%-π)*(87-88)/3 + √(√(√(raiz)))");
		tester.criarPostfix();
		assertEquals(0 ,Double.compare(tester.resolver(),0));
	}
	@Test
	public void testResolver003() throws CloneNotSupportedException {
		Equation tester = new Equation("var!+√(asd%-π)*(87-88)/3 + √(√(√(raiz)))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(10.0, "var");
		tester.setVar(20.0, "asd");
		tester.setVar(30.0, "raiz");
		tester.setVar(40.0, "raiz");
		tester.setVar(50.0, "var");
		tester.setVar(60.0, "notvar");
		tester.setVar(70.0, "21");
		tester.setVar(80.0, "asd213");
		tester.setVar(90.0, "João Cunha");
		assertEquals(0 ,Double.compare(tester.resolver(), Double.NaN));
	}
	@Test
	public void testResolver004() throws CloneNotSupportedException {
		Equation tester = new Equation("var");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(10.0, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),10));
	}
	@Test
	public void testResolver005() throws CloneNotSupportedException {
		Equation tester = new Equation("var!");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(10.0, "var");
		assertEquals(0 ,Double.compare(tester.resolver(), 3628800.0));
	}
	@Test
	public void testResolver006() throws CloneNotSupportedException {
		Equation tester = new Equation("var%");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(10.0, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),0));
	}
	@Test
	public void testResolver007() throws CloneNotSupportedException {
		Equation tester = new Equation("1000+var%");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(10.0, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),1100));
	}
	@Test
	public void testResolver008() throws CloneNotSupportedException {
		Equation tester = new Equation("var+var");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15.695, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),31.390));
	}
	@Test
	public void testResolver009() throws CloneNotSupportedException {
		Equation tester = new Equation("var*var");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15.695, "var");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),246.33302500000002));
	}
	@Test
	public void testResolver010() throws CloneNotSupportedException {
		Equation tester = new Equation("var-vars");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15.695, "var");
		tester.setVar(15.69523, "vars");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),-0.0002300000000001745));
	}
	@Test
	public void testResolver011() throws CloneNotSupportedException {
		Equation tester = new Equation("var/vars");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15.695, "var");
		tester.setVar(31.390, "vars");
		assertEquals(0 ,Double.compare(tester.resolver(),0.5));
	}
	@Test
	public void testResolver012() throws CloneNotSupportedException {
		Equation tester = new Equation("var+(var*2)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),45));
	}
	@Test
	public void testResolver013() throws CloneNotSupportedException {
		Equation tester = new Equation("var+(var*2)/2");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),30));
	}
	@Test
	public void testResolver014() throws CloneNotSupportedException {
		Equation tester = new Equation("var+(((var*2)/var)*44)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		assertEquals(0 ,Double.compare(tester.resolver(),103));
	}
	@Test
	public void testResolver015() throws CloneNotSupportedException {
		Equation tester = new Equation("v!-var+(((var*2)/var)*44)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		assertEquals(0 ,Double.compare(tester.resolver(),193));
	}
	@Test
	public void testResolver016() throws CloneNotSupportedException {
		Equation tester = new Equation("v!-var+(((var*2)/var)*(44+π))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		assertEquals(0 ,Double.compare(tester.resolver(),199.2831853071796));
	}
	@Test
	public void testResolver017() throws CloneNotSupportedException {
		Equation tester = new Equation("v!-var+(((var^2)/var)*(44+π))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		assertEquals(0 ,Double.compare(tester.resolver(),812.123889803847));
	}
	@Test
	public void testResolver018() throws CloneNotSupportedException {
		Equation tester = new Equation("v!-var+((var^2/var)*(44+π))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		assertEquals(0 ,Double.compare(tester.resolver(),812.123889803847));
	}
	@Test
	public void testResolver019() throws CloneNotSupportedException {
		Equation tester = new Equation("v!-var*2+(((var+2)/var^2)*(44+π))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		assertEquals(0 ,Double.compare(tester.resolver(),93.56180922271568));
	}
	@Test
	public void testResolver020() throws CloneNotSupportedException {
		Equation tester = new Equation("(v!-var*2+(((var+2)/var^2)*(44+π)))*10%");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),9.356180922271568));
	}
	@Test
	public void testResolver021() throws CloneNotSupportedException {
		Equation tester = new Equation("(v!-var*2+(((var+2)/var^2)*(44+π)))+10%");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),102.91799014498724));
	}
	@Test
	public void testResolver022() throws CloneNotSupportedException {
		Equation tester = new Equation("√(9)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),3));
	}
	@Test
	public void testResolver023() throws CloneNotSupportedException {
		Equation tester = new Equation("√(vaa)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(16, "vaa");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),4));
	}
	@Test
	public void testResolver024() throws CloneNotSupportedException {
		Equation tester = new Equation("√(√(vaa))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(16, "vaa");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),2));
	}
	@Test
	public void testResolver025() throws CloneNotSupportedException {
		Equation tester = new Equation("8");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(16, "vaa");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),8));
	}
	@Test
	public void testResolver026() throws CloneNotSupportedException {
		Equation tester = new Equation("(v!-var*2+(((var+2)/var^2)*(44+π)))+10%+√(√(vaa))");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(16, "vaa");
		tester.setVar(5, "v");
		System.out.println("teste final com tudo   " + tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),95.76180922271568));
	}
	@Test
	public void testResolver027() throws CloneNotSupportedException {
		Equation tester = new Equation("(-b+√(b^2-4*a*c))/(2*a)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(3, "a");
		tester.setVar(4, "b");
		tester.setVar(-4, "c");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),0.6666666666666666));
	}
	@Test
	public void testResolver028() throws CloneNotSupportedException {
		Equation tester = new Equation("(-b-√(b^2-4*a*c))/(2*a)");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(2, "a");
		tester.setVar(4, "b");
		tester.setVar(-5, "c");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),-2.8708286933869704));
	}
	/*
	@Test
	public void testResolver0004() {
		Equation tester = new Equation("(v!-var*2+(((var+2)/var^2)*(44+π)))+10%");
		tester.criarPostfix();
		tester.criarArvore();
		tester.setVar(15, "var");
		tester.setVar(16, "vaa");
		tester.setVar(5, "v");
		System.out.println(tester.resolver());
		assertEquals(0 ,Double.compare(tester.resolver(),93.56180922271568));
	}*/
	
	//falta metodo resolver
	
	
/*
	@Test
	public void testResolver102() {
		Equation tester = new Equation("var!+√(asd%-π)*(87-88)/3 + √(√(√(raiz)))");
		assertEquals( ,tester.resolver());
		tester.setVar(10.0, "var");
		tester.setVar(20.0, "asd");
		tester.setVar(30.0, "raiz");
		tester.setVar(40.0, "raiz");
		tester.setVar(50.0, "var");
		tester.setVar(60.0, "notvar");
		tester.setVar(70.0, "21");
		tester.setVar(80.0, "asd213");
		tester.setVar(90.0, "João Cunha");
	}*/
}
